package com.hh.service.service.integral;

import com.baomidou.mybatisplus.extension.service.IService;
import com.github.pagehelper.PageInfo;
import com.hh.common.model.integral.PointsMallCategory;
import com.hh.common.model.integral.PointsMallGoods;
import com.hh.common.request.PageParamRequest;
import com.hh.common.request.StoreSeckillSearchRequest;
import com.hh.common.request.integral.IntegralCreateOrderRequest;
import com.hh.common.request.integral.StoreIntegralAddRequest;
import com.hh.common.response.integral.*;
import com.hh.common.vo.MyRecord;

import java.util.List;

public interface PointsMallService extends IService<PointsMallGoods> {
    Boolean saveIntegralGoods(StoreIntegralAddRequest storeIntegralAddRequest);

    PageInfo<StoreIntegralResponse> getList(StoreSeckillSearchRequest request, PageParamRequest pageParamRequest);

    List<PointsMallCategory> getPointsMallCategoryList();

    List<StoreIntegralH5Response> getPointsMallList(Integer cateId, String keyword,PageParamRequest pageParamRequest);

    List<IntegralCateListResponse> getPointsMallCateList();

    StoreIntegralDetailResponse goodsDetails(Integer id);

    MyRecord exchange(IntegralCreateOrderRequest orderRequest);

    MyRecord againExchange(String orderId);

    Boolean updateIntegralGoods(StoreIntegralAddRequest storeIntegralAddRequest);

    IntegralProductInfoResponse getDetailAdmin(Integer id);

    Boolean updateIntegralGoodsStatus(Integer id, boolean status);
}
